Otherwise the gtk_grab_remove() calls on widget destruction will happen
on the default window group, which may leave the real window group
of the popover with a dangling pointer if it is not the default one.
This could be seen on the inspector, open a popover in the properties
list and close the window with alt-F4.
static void gtk_popover_set_state (GtkPopover *popover,
guint state);
static void gtk_popover_invalidate_borders (GtkPopover *popover);
+static void gtk_popover_apply_modality (GtkPopover *popover,
+ gboolean modal);
G_DEFINE_TYPE_WITH_PRIVATE (GtkPopover, gtk_popover, GTK_TYPE_BIN)
GtkPopover *popover = GTK_POPOVER (object);
GtkPopoverPrivate *priv = popover->priv;
+ if (priv->modal)
+ gtk_popover_apply_modality (popover, FALSE);
+
if (priv->window)
{
g_signal_handlers_disconnect_by_data (priv->window, popover);